/*
 * @Author: ૮₍ ˙О˙₎ა
 * @Date: 2023-05-03 15:44:55
 */
const express=require('express');
const verifyLogin=require('../middlewares/verifyLogin')
const noteModel=require('../db/model/noteModel');
const userModel=require('../db/model/userModel');



const apiRouter=express.Router()

// 首页接口
apiRouter.post('/index',(req,res)=>{   
    
    
    if(req.session.userName){
        noteModel.find().then((arrTitle)=>{
            res.json({
                msg:"登录未到期",
                name:req.session.userName,
                code:'1',
                nodeTitle:arrTitle
            })
            
        })
            
            
    }else{
        res.json({
            msg:"登录以到期",
            name:null,
            code:'0'
            })
    }
    
})



// 提交登录接口
apiRouter.post('/login',(req,res)=>{
    let {userName,pwd}=req.body;
    
    userModel.find().then((data)=>{
        let obj=data.find(item=>item.userName===userName&&item.pwd===pwd)
        if(obj){
            req.session.userName=userName
            res.json({
                msg:"正确",
                code:'1'
            })
        }else{
            res.json({
                msg:"错误",
                code:'0'
            })
        }
    })
    
    
    
})
// 退出登录接口
apiRouter.get('/outLogin',verifyLogin,(req,res)=>{
    req.session.destroy(()=>{
        res.redirect('/index')
    })
})


// 添加笔记接口
apiRouter.post('/addNote',(req,res)=>{
    let {name,content}=req.body;
    noteModel.create({
        nodeTitle:name,
        nodeContent:content
    })
    res.redirect('/index')
    
    
})



// 编辑回填接口
apiRouter.post('/update',(req,res)=>{    
    noteModel.findById(global.cId).then((obj)=>{
        res.json({
            cNode:obj
        })
    })
    
    
})
// 确认修改接口
apiRouter.post('/updateNode',(req,res)=>{
    let {id,updateTitle,updateContent}=req.body;
    noteModel.updateOne({_id:id},{
        nodeTitle:updateTitle,
        nodeContent:updateContent
    }).then((val)=>{
        res.json({
            code:'1'
        })
    })
    
})

// 删除日记接口
apiRouter.post('/delNode',verifyLogin,(req,res)=>{
    let {id}=req.body;
    console.log(id);
    
    noteModel.deleteOne({_id:id}).then(val=>{
        res.json({
            code:"1"
        })
    })
})


// 注册页面提交接口
apiRouter.post('/register',(req,res)=>{
    let {userName,pwd}=req.body;
    userModel.find().then(val=>{
        let flag=val.some(item=>{
            return item.userName===userName
        })
        if(flag){
            // 如果返回true表示用户名重复
            res.json({
                code:flag
            })
        }else{
            userModel.create({
                userName,
                pwd
            })
            res.json({
                code:flag
            })
        }
        
    })
    
})
module.exports=apiRouter